
import com.ia.bo.calcularCamino;
import com.ia.bo.mapaMetro;
import com.ia.util.lectorEstaciones;
import com.ia.sd.*;

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

/**
 *
 * @author a.romero.sernaque
 */
public class TestPrueba {
    
    public mapaMetro mp;
    public calcularCamino cc;
    
    
    public  TestPrueba(){
        lectorEstaciones le = new lectorEstaciones(3,3);
        int[] nEstaciones=null; String[][] lineas=null; String[][] trasbordos=null; float[][] g=null; float[][] h=null;
        le.leerEstaciones();
        this.mp= mapaMetro.getMapaMetro();
        calcularCamino c = new calcularCamino(4, 4, 0, 2);
        //System.out.println(c.calcularCamino(mp)[0]);
        
        
        
        
        // Alex, éste código lee la pila resultado, la recorre, y saca por pantalla el recorrido
        // separado por transbordos y líneas y saca por último el peso
        pila camino = c.calcularCamino(mp);
        nodo aux, aux2 = null;
        aux = camino.desapilar();
        String respuesta = "Recorrer por la línea " + mp.getNombreLinea()[aux.getLinea()] + ": " + mp.getLineas()[aux.getLinea()][aux.getPos()];
        while (!camino.vacia()) {
            aux2 = camino.desapilar();
            if (aux.getLinea() == aux2.getLinea()) {
                respuesta = respuesta.concat(" - " + mp.getLineas()[aux2.getLinea()][aux2.getPos()]);
            } else {
                respuesta = respuesta.concat("\nTransbordo en " + mp.getLineas()[aux.getLinea()][aux.getPos()] + " de la línea " + mp.getNombreLinea()[aux.getLinea()] + " a la línea " + mp.getNombreLinea()[aux2.getLinea()]);
                respuesta = respuesta.concat("\nRecorrer por la línea " + mp.getNombreLinea()[aux2.getLinea()] + ": " + mp.getLineas()[aux2.getLinea()][aux2.getPos()]);
            }
            aux = aux2;
        }
        respuesta = respuesta.concat("\nCoste del trayecto" + aux2.getCoste());
        System.out.println(respuesta);
        
        
        
        
        
        this.imprimir();
    }
    
    public void imprimir(){
        String [][] lineasMetro=this.mp.getLineas();
        System.out.println("nLineas: "+this.mp.getNLineas());
        System.out.println("getNTrasbordos: "+this.mp.getNTrasbordos());
        System.out.println("lineasMetro 0,0"+lineasMetro[1][1]);
        //System.out.println(""+this.mp.get);
    }
    
    
}
